{{tag>bionic tutoriel matériel sécurité}}
----

{{  https://img2.freepng.fr/20180624/wuy/kisspng-smart-card-electronic-identification-computer-icon-5b2f69c1e2d9b5.4842458815298339219292.jpg?200}}
====== L'identification électronique : utiliser une carte d'identité électronique belge ======

La carte d'identité belge et son logiciel offrent une méthode sûre d'authentification des citoyens belges. Elle consiste en l'utilisation d'une clef privée et d'une clef publique signée ([[:gnupg|voir authentification par clef publique et clef privée]]) par l'autorité de certification propre à l'État belge. 

L'ensemble peut être utilisée pour signer électroniquement des documents lorsque la carte d'identité est introduite dans le lecteur. Cette signature a une valeur légale, faites attention !\\
Cette page a pour but de décrire la procédure d'installation du lecteur de carte d'identité électronique belge. Les applications de la carte d’identité électronique belge (eID) sont par exemple la Tax-On-Web (Déclaration à l'Impôt), la gestion de dossiers de sécurité sociale (mutuelle, syndicat, ONP, Registre National) etc. Ce lecteur fonctionne également avec les cartes de crédit.

===== Pré-requis =====

  * Disposer d'un lecteur de cartes compatibles [[wpfr>PC/SC|PC/SC]]
  * Avoir [[:tutoriel:comment_installer_un_paquet|installé les paquets]] **[[apt>pcscd,libccid,libacsccid1|pcscd libccid libacsccid1]]**.

=====Installation=====

Pour installer les pilotes nécessaires au bon fonctionnement de votre carte, il faut installer un paquet qui va ajouter les [[:depots|dépôts]] requis :
  * Téléchargez et [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **eid-archive.deb** fourni par l'État belge et , en mode terminal, sudo dpkg -i 'le paquet .deb' et suivre les messages [[ https://eid.belgium.be/fr/installation-du-logiciel-eid-sous-linux|Installation du logiciel eID sous Linux]].
  * Puis [[:tutoriel:comment_modifier_sources_maj#recharger_la_liste_des_paquets|rechargez la liste des paquets]].
  * Il ne vous reste plus qu'à [[:tutoriel:comment_installer_un_paquet|installer le paquet]], **[[apt>eid-mw]]**, puis **[[apt>eid-viewer]]**

==== Test ====
Avand d'aller plus loin, tester que le lecteur et votre carte (insérée) fonctionnent bien, en lancant l'EID viewer :

<code>eid-viewer</code>

Les informations de votre carte doivent s'afficher dans une nouvelle fenêtre: votre nom, votre photo,...

==== Echec du test ====
Si le viewer ne fonctionne pas, il se peut que votre démon pcscd ne soit pas lancé. 
Il faut alors passer les deux commandes suivantes:
<code>
sudo systemctl enable pcscd
sudo systemctl start pcscd</code>

puis relancer l'EID viewer:
<code>eid-viewer</code>

===== Intégration dans les navigateurs web =====
Pour s'authentifier, les navigateurs doivent pouvoir accéder aux certificats de votre carte d'identité électronique. D'où la nécessité de la procédure qui suit.
<note important>De manière générale, un navigateur installé via [[:snap|Snap]] ou [[:flatpak|Flatpak]] ne poura accéder aux certicats de votre carte d'identité. Pour une utilisation d'Eid avec un navigateur, il est préférable d'installer ce dernier via un [[:ppa|ppa]]</note>
====Firefox==== 
<note>
À partir [[:jammy|Ubuntu 22.04 LTS ("The Jammy Jellyfish")]] le navigateur [[:Firefox]], même s'il est installable à l'aide de [[:Synaptic]] ou de la [[:Logithèque]], est installé au format [[:Snap]]. Le format SNAP ne permet pas à Firefox d'accéder aux bibliothèques opensc-pkcs11.so permettant de se connecter aux cartes à puce à des fins d'authentification (et à tout autre programme extérieur). Voir la page FAQ du [[https://eid.belgium.be/fr/faq/pourquoi-lutilisation-de-leid-est-elle-impossible-avec-des-logiciels-de-snap-etou-flatpak#7636|site officiel de eID]].

En attendant la résolution de ce problème (en cours), pour une utilisation de la carte eID avec Firefox dans [[:jammy|Ubuntu 22.04 LTS]], il est nécessaire de désinstaller le paquet snap de Firefox, de bloquer les mises à jour via SNAP et d'installer Firefox via par le [[:ppa|PPA]] [[https://launchpad.net/~ubuntu-mozilla-security/+archive/ubuntu/ppa|de Mozilla]]. Méthodes d'installation [[:firefox|ici]] ou [[https://www.numetopia.fr/comment-installer-firefox-au-format-deb-sur-ubuntu/|ici]].
</note>
L'installation du paquet intègre l'extension pour Mozilla. Si le module n’apparaît tout de même pas dans le gestionnaire de modules de Firefox faites ce qui suit :
  * Téléchargez et installez l'extension **eID Belgique** [[https://addons.mozilla.org/fr/firefox/addon/belgium-eid/|ici]] ou via votre gestionnaire de modules : 
  * Redémarrer Firefox et connectez-vous une première fois à ''https://my.belgium.be/'' : ça ne marche pas, et __c’est normal__ : les certificats viennent seulement d’être ajoutés, il reste à les autoriser…
  * Pour cela allez dans //Menu Firefox (à droite) -> Préférences -> Avancé -> Certificats -> Afficher les certificats -> Chercher les Certificats Belgian Root (CA, CA1, CA2, CA3 et/ou CA4)//,
  * Pour chacun d’eux  cliquez sur la ligne située sous la petite flèche de ce certificat. Cliquez sur //Modifier la confiance//, cochez les trois cases et cliquez sur « OK ». Cliquez deux fois sur « OK » pour refermer le Gestionnaire de certificats et les Options.
  * Redémarrer Firefox ... :-D 

<note important>Le lecteur de carte et la carte insérée doit être branché AVANT de lancer firefox !!!</note>

==== Chrome / Chromium ====
<note>
Depuis [[:eoan|Eoan 19.10]] le navigateur [[:Chromium-Browser|Chromium]], même s'il est installable à l'aide de [[:Synaptic]] ou de la [[:Logithèque]], est installé avec le format [[:Snap]]. Depuis l'utilisation de ce format d'installation, Chromium ne peut plus accéder à la bibliothèque opensc-pkcs11.so permettant de se connecter aux cartes à puce à des fins d'authentification. Info pour Chromium : [[https://bugs.launchpad.net/ubuntu/+source/chromium-browser/+bug/1843392|snap : smart card reader no longer works]].

Par contre, le tutoriel ci-dessous permet à l'Eid de fonctionner avec [[:Google Chrome]] installable via le [[:paquet]] Ubuntu/debian proposé sur la page officielle de [[http://www.google.fr/chrome|téléchargement de Google Chrome]].

Il existe des [[:ppa]] permettant de forcer l'installation de Chromium (en anglais) par [[:apt]]. Cependant, même si l'authentification de l'Eid fonctionne avec ces versions, leur lancement génère beaucoup d'erreurs (testé sur [[:focal|20.04 LTS]]). C'est à déconseiller, donc.
</note>

<note>
Ajoutez le support NSS en [[:tutoriel:comment_installer_un_paquet|installant le paquet]], **[[apt>libnss3-tools]]**, puis configurez [[:google_chrome|chrome]] ou [[:chromium]] avec la commande ''modutil''.  Il faudra fermer Chrome pour que cette configuration puisse être réalisée.</note>

Sur une installation 32bits :
<code>modutil -dbdir sql:.pki/nssdb/ -add "Belgium eID" -libfile /usr/lib/libbeidpkcs11.so</code>

Sur une installation 64bits :
<code>modutil -dbdir sql:.pki/nssdb/ -add "Belgium eID" -libfile /usr/lib/x86_64-linux-gnu/libbeidpkcs11.so.0</code>

Si l'intégration s'est bien passée, le résultat de cette commande (AVEC la carte d'identité dans le lecteur) : <code>modutil -dbdir sql:.pki/nssdb/ -list</code>
devrait ressembler à ceci :<code>
Listing of PKCS #11 Modules
-----------------------------------------------------------
  1. NSS Internal PKCS #11 Module
	 slots: 2 slots attached
	status: loaded

	 slot: NSS Internal Cryptographic Services
	token: NSS Generic Crypto Services

	 slot: NSS User Private Key and Certificate Services
	token: NSS Certificate DB

  2. Belgium eID
	library name: /usr/lib/libbeidpkcs11.so
	 slots: 1 slot attached
	status: loaded

	 slot: ACS ACR38U 00 00
	token: BELPIC
-----------------------------------------------------------
</code>
====Navigateur Brave====
<note>Ne pas utiliser la version installée par [[:snap|snap]], mais bien celle des [[:depots|dépôts]] de [[https://brave.com/linux/#release-channel-installation|Brave]].</note>
Une fois l'installation du logiciel eID effectuée (voir plus haut), le navigateur [[:brave|Brave]] reconnait nativement l'utilisation d'une carte d'identé électronique belge (aucune extension nécessaire).

===== Utilisation =====
 
Lancez l'application comme indiqué [[:tutoriel:comment_lancer_application|ici]] ou via le [[:terminal]] (toutes [[:versions]] ou [[:variantes]] d'Ubuntu) avec la [[:commande_shell|commande]] suivante : <code>eid-viewer</code>
Elle vous permet de vérifier le fonctionnement du lecteur en lisant les informations et les certificats contenus dans votre carte d'identité et en pouvant changer le code PIN.

<note tip>Sans redémarrage du PC, le logiciel de lecture apparaît bien dans le menu et il fonctionne, 
mais dès que vous essaierez de lire la carte d'identité électronique, si une "erreur inconnue" apparaît, redémarrer votre ordinateur.  
Vous pouvez utiliser la commande suivante pour éviter le redémarrage : <code>sudo /etc/init.d/pcscd restart</code>
</note>
====Utilisation dans diverses application====
===Utilisation dans la messagerie Evolution===

Pour pouvoir signer vos courriels dans [[:Evolution]], il vous faut tout d'abord installer le module dans [[#Firefox]] (voir ci-dessus).

Ensuite (Evolution doit être fermé!!!), copiez le fichier //secmod.db// du répertoire de Firefox dans le répertoire d'Evolution (dossiers cachés) avec la commande suivante dans un [[:terminal]] :
<code>cp ~/.mozilla/firefox/dossier_au_nom_aléatoire.default/secmod.db ~/.evolution</code>

Adaptez //dossier_au_nom_aléatoire.default// à votre nom de dossier.

Une fois ce fichier //secmod.db// copié dans le dossier ~/.evolution, et **les droits correctement attribués**, réouvrez Evolution (lecteur de carte branché et carte d'identité dans le lecteur). Allez dans le menu Edition/préférence/certificat et constatez que vos certificats sont présents. 

Ensuite, dans les préférences de votre compte mail (ou de chacun pour ceux qui en possèdent plusieurs), sous l'onglet sécurité, sélectionnez parcourir pour la signature S/MIME et sélectionnez le module adéquat (authentifier ou signer... suivant que vous désiriez utiliser votre carte pour signer numériquement ou simplement authentifier votre courriel ((Valeur juridique identique à une signature manuscrite, voir [[http://www.belgium.be/fr/economie/commerce_et_consommation/protection_du_consommateur/commerce_electronique/siganture_electronique/|ici]]))
Il vous faut désormais certifier que vous autorisez le certificat d'autorité (CA) nommé Belgium root à 'authentifier la validité des certificats'. Pour ce faire, dans //Édition->Préférence->Certificat//, sélectionnez, sous l'onglet 'autorité', //belgium root// et éditez-le. Cochez le fait que vous l'autorisez à identifier les auteurs de mails...

A présent, lors de l'écriture d'un courriel, juste avant son envoi, sélectionnez //Sécurité// puis cochez //Signer par S/MIME//, //Envoyer// et là Evolution vous demandera votre code PIN de la carte d'identité...

===Utilisation dans Thunderbird===
Pour pouvoir signer vos courriels dans [[:Thunderbird]], il vous faut tout d'abord installer le module dans [[#Firefox]] (voir ci-dessus).
Ensuite suit :
  * Allez dans //Préférences->Préférences->Avancé->Certificats->Périphériques de sécurité//,
  * Choisissez dans l'encadré à gauche : ''Module name: Belgium Identity Card PKCS#11 Module filename: /usr/lib/libbeidpkcs11.so'',
  * Cliquez sur //Charger//.

Pour Thunderbird 60.7 sous Ubuntu 18.04, ensuite suit :
  * Allez dans //Editer->comptes//,
  * Sélectionnez le label //Sécurité// dans le compte souhaité
  * Sur le panneau de droite, cliquez sur //Security device//
  * Un nouveau panneau s’ouvre, choisissez dans l'encadré à gauche : ''Module name: Belgium Identity Card PKCS#11 Module filename: /usr/lib/x86_64-linux-gnu/libbeidpkcs11.so'',
  * Cliquez sur //Charger// - le panneau se ferme.
  * Insérez votre carte eID dans le lecteur,
  * Toujours sur le panneau //sécurité// du compte, sélectionnez votre certificat pour la signature ou le chiffrement.

===Utilisation dans LibreOffice===
Il faut d'abord définir le chemin vers le certificats, soit à partir du profil de Thunderbird (par défaut) soit à partir de Firefox. Pour paramétrer cela allez dans //Outils → Options → Sécurité → Chemin du certificat//
Vous pouvez ensuite indiquer numériquement que vous êtes l'auteur d'un document Writer ou Calc. 
Après avoir créé le document dans [[:LibreOffice]] et l'avoir sauvé sur disque (obligatoire), choisissez le menu //Fichier -> Signatures numériques//.

===Signer un PDF ===
Il est obligatoire en Belgique de signer les documents PDF  concernant les déclarations fiscales.
Soit vous utilisez Libreoffice et vous l'exportez en pdf, soit vous passez par [[:acroread|Acrobat reader]].
\\Pour pouvoir le faire avec [[:acroread|Acrobat Reader]].
Il faut aller dans //Document -> Paramètres -> PKCS #11// et ajouter le module ''/usr/lib/libbeidpkcs11.so'' ou /usr/lib/libbeidpkcs11.so.3 avec la nouvelle version.


<note warning>À la signature du PDF on vous demande sous quel nom enregistrer le document, vous devez donner le nom du document ouvert, et donc accepter de l'écraser</note>

Le gouvernement belge propose également de signer ses pdf en ligne (on les téléverse, et ils nous les reproposent au téléchargement, signés). Le service se trouve à l'adresse suivante: ''https://sign.belgium.be/''.

===== Problèmes connus =====

==== Problème résolu avec Firefox pour Ubuntu 18.04 ====

//31 Mars 2020//
Le paquet à utiliser a changé. La librairie libacr38u pour les puces ACR38U est remplacée par la librairie libacsccid1, qui n'est pas automatiquement installée. Après avoir installé la dernière version et afin de s'assurer que les mises à jour sont bien prises en compte, exécuter les commandes suivantes:
<code>
sudo apt-get update
</code>

Si cela n'a pas résolu le problème, on peut effectuer les commandes suivantes :
<code>
sudo dpkg-reconfigure eid-archive
sudo apt-get update
sudo apt-get dist-upgrade
</code>

Si cela n'est pas suffisant, il faut alors supprimer tout le software de l'eiD comme cela est expliqué dans la page : https://eid.belgium.be/fr/faq/comment-supprimer-le-logiciel-eid-0#7553 et donc aussi le pack "eid-archive":
<code>
sudo apt-get --purge remove libbeidpkcs11-bin
sudo apt-get --purge remove eid-archive
</code>

Ensuite il faut re-télécharcher et installer eid-archive du site officiel belge: 
https://eid.belgium.be/fr/installation-du-logiciel-eid-sous-linux
ensuite, à nouveau:
<code>
sudo apt-get update
sudo apt-get install eid-mw eid-viewer 
</code>

Si cela ne marche toujours pas, contacter BOSA, ils répondent rapidement.
=====Voir aussi=====
  * [[http://www.bxlug.be/?Installer-Eid-lecteur-de-carte-d|Page Complémentaire à ce tutoriel]],
  * [[https://eid.belgium.be/fr/quest-ce-que-la-eid|Page générale d'information sur la carte d'identité électronique belge ]]
  * [[http://xubuntu.fr/forum/viewtopic.php?f=2&t=2674|une procédure simple et efficace sur xubuntu.fr]]
  * [[http://wiki.yobi.be/wiki/Belgian_eID|le wiki Yobi]].

----

//Contributeurs principaux: [[:utilisateur:svergeylen]] Refonte pour Ubuntu 14.04 LTS ; [[utilisateurs:equipc]] utilisation dans Thunderbird et OpenOffice ;
[[:utilisateurs:efhache84|Efhache84]] (utilisation dans Evolution) ; [[:utilisateurs:sparky]] (Signature avec Acrobat) ; [[:utilisateurs:A Pirard|André]] (Version 4, conflit Firefox avec Apparmor, danger de apturl).
 //